"""
Spark的流程就是:
将数据加载到Spark成RDD数据(数据输入)
对RDD数据调用算子进行计算(数据计算)
返回RDD数据成python对象(数据输出)
数据输出的方法
collect:将RDD内容转化为list list: list = rdd.collect()
reduce:将RDD内容进行简单的自定义聚合
take:取出RDD的前n个元素组成list
count:统计RDD中元素个数
"""


"""
输出到python对象

"""
from pyspark import SparkContext,SparkConf
import os
import json
os.environ["PYSPARK_PYTHON"] = "C:/Users/86131/AppData/Local/Programs/Python/Python39/python.exe"
conf = SparkConf().setMaster("local[*]").setAppName("test_spark")
sc = SparkContext(conf=conf)

#创建一个RDD对象
rdd = sc.parallelize([1, 2, 3, 4, 5, 5, 6, 7, 8])
list: list = rdd.collect()          #拿到rdd对象的数据
sum = rdd.reduce(lambda x,y: x+y)   #进行简单的加法聚合
list1: list = rdd.take(5)       #取出前五个数
count = rdd.count()             #统计rdd中元素的数量
print(list)
print(sum)
print(list1)
print(count)
sc.stop()
